OPT =  -Wall -pedantic -ansi 
DEBUG = -g -ggdb



main: main.o Interface.o Espace.o Visiteur.o Jeu.o Vecteur.o sdlglutils.o
	gcc $(OPT) $(DEBUG) main.o Interface.o Espace.o Visiteur.o Jeu.o Vecteur.o sdlglutils.o -o main -lSDL -lSDL_image -lGLU -lGL -lSDL_ttf

main.o: main.c Visiteur.h Espace.h Jeu.h Vecteur.h
	gcc $(OPT) $(DEBUG) main.c -c


main2: main2.o Interface.o Espace.o Visiteur.o Jeu.o Vecteur.o sdlglutils.o
	gcc $(OPT) $(DEBUG) main2.o Interface.o Espace.o Visiteur.o Jeu.o Vecteur.o sdlglutils.o -o main2 -lSDL -lSDL_image -lGLU -lGL -lSDL_ttf
	
main2.o: main2.c Visiteur.h Espace.h Jeu.h Vecteur.h
	gcc $(OPT) $(DEBUG) main2.c -c

main3: main3.o Interface.o Espace.o Visiteur.o Jeu.o Vecteur.o sdlglutils.o
	gcc $(OPT) $(DEBUG) main3.o Interface.o Espace.o Visiteur.o Jeu.o Vecteur.o sdlglutils.o -o main3 -lSDL -lSDL_image -lGLU -lGL -lSDL_ttf
	
main3.o: main3.c Visiteur.h Espace.h Jeu.h Vecteur.h
	gcc $(OPT) $(DEBUG) main3.c -c
	
main4: main4.o Interface.o Espace.o Visiteur.o Jeu.o Vecteur.o sdlglutils.o
	gcc $(OPT) $(DEBUG) main4.o Interface.o Espace.o Visiteur.o Jeu.o Vecteur.o sdlglutils.o -o main4 -lSDL -lSDL_image -lGLU -lGL -lSDL_ttf
	
main4.o: main4.c Visiteur.h Espace.h Jeu.h Vecteur.h
	gcc $(OPT) $(DEBUG) main4.c -c
	
	

Interface.o: Interface.c Interface.h Visiteur.h Espace.h Jeu.h Vecteur.h
	gcc $(OPT) $(DEBUG) Interface.c -c

Espace.o: Espace.c Espace.h Vecteur.h
	gcc $(OPT) $(DEBUG) Espace.c -c

Visiteur.o: Visiteur.c Visiteur.h Vecteur.h
	gcc $(OPT) $(DEBUG) Visiteur.c -c

Jeu.o: Jeu.c Jeu.h Visiteur.h Espace.h Vecteur.h
	gcc $(OPT) $(DEBUG) Jeu.c -c
	
Vecteur.o: Vecteur.h Vecteur.c
	gcc $(OPT) $(DEBUG) Vecteur.c -c

sdlglutils.o: sdlglutils.c sdlglutils.h
	gcc $(OPT) $(DEBUG) sdlglutils.c -c

clean: 
	/bin/rm -rf *.o main main2 main3 main4
